<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
</head>
<body>
<!--服了，我index如果放在webapp下，不经过解析器时，thymeleaf不生效
如果是jsp则没有这个问题。。。。。。。
无奈只能放在WEB-INF下(之前定义的thymeleaf解析器suffix)，然后配置相应的跳转controller
-->
<h1>首页</h1>
<!--自动获取上下文，与jsp的baseurl一样-->
<a th:href="@{/success}">访问目标页面success.html</a>
<!--无效，/项目名/success 才是实际地址 -->
<!--<a href="/success">访问目标页面success.html</a>-->
<!--也无效，因为页面放在web-inf下，受保护，只能通过控制器接入-->
<!--<a href="success.html">success</a>-->
<h1>ParameterController</h1>
<a th:href="@{/param/servlet(username='jack',password='pwd')}">servlet</a><br/>
<form method="get" th:action="@{/param/anno}">
    用户名：<input name="user_name" type="text"><br>
    密码：<input name="password" type="password"><br>
    爱好：<input name="hobby" type="checkbox" value="a">a
    <input name="hobby" type="checkbox" value="b">b
    <input name="hobby" type="checkbox" value="c">c<br>
    <input type="submit" value="测试使用控制器的形参获取请求参数">
</form>
<br/>
<form method="post" th:action="@{/param/bean}">
    用户名：<input name="username" type="text"><br>
    密码：<input name="password" type="password"><br>
    性别：<input name="sex" type="radio" value="男">男<input name="sex" type="radio" value="女">女<br>
    年龄：<input name="age" type="text"><br>
    邮箱：<input name="email" type="text"><br>
    <input type="submit" value="使用实体类接收请求参数">
</form>
<h1>RequestController</h1>
<a th:href="@{/request/testRequestMapping}">多接口映射测试1，testRequestMapping</a><br>
<a th:href="@{/request/test}">多接口映射测试2，test</a><br>
<form method="post" th:action="@{/request/test}">
    <input type="submit" value="多方法测试-->POST">
</form>
<a th:href="@{/request/testGetMapping}">测试GetMapping注解-->/testGetMapping</a><br>
<a th:href="@{/request/testParamsAndHeaders(username='admin',password=1234)}">测试RequestMapping注解的params属性-->/testParamsAndHeaders</a><br>
<a th:href="@{/request/a1a/testAnt}">测试@RequestMapping可以匹配ant风格的路径-->使用?</a><br>
<a th:href="@{/request/a1a/testAnt}">测试@RequestMapping可以匹配ant风格的路径-->使用*</a><br>
<a th:href="@{/request/a1a/testAnt}">测试@RequestMapping可以匹配ant风格的路径-->使用**</a><br>
<a th:href="@{/request/testPath/1/admin}">测试@RequestMapping支持路径中的占位符-->/testPath</a><br>

<h1>AttributeController</h1>
<a th:href="@{/attr/testRequestByServletAPI}">通过servletAPI向request域对象共享数据</a><br>
<a th:href="@{/attr/testModelAndView}">通过ModelAndView向request域对象共享数据</a><br>
<a th:href="@{/attr/testModel}">通过Model向request域对象共享数据</a><br>
<a th:href="@{/attr/testMap}">通过map向request域对象共享数据</a><br>
<a th:href="@{/attr/testModelMap}">通过ModelMap向request域对象共享数据</a><br>
<a th:href="@{/attr/testSession}">通过servletAPI向session域对象共享数据</a><br>
<a th:href="@{/attr/testApplication}">通过servletAPI向application域对象共享数据</a><br>
<h1>view controller</h1>
<a th:href="@{/view/testThymeleafView}">测试ThymeleafView</a><br>
<a th:href="@{/view/testForward}">测试InternalResourceView</a><br>
<a th:href="@{/view/testRedirect}">测试RedirectView</a><br>
<h1>File Controller</h1>
<a th:href="@{/file/testDown}">下载1.jpg</a><br>
<form enctype="multipart/form-data" method="post" th:action="@{/file/testUp}">
    头像：<input name="photo" type="file"><br>
    <input type="submit" value="上传">
</form>
<h1><a th:href="@{/axios}">前往axios.html测试response</a></h1> <br/>
<h1>拦截器和异常处理 interceptor and exception</h1>
<a th:href="@{/interceptor/test}">测试拦截器</a><br>
<a th:href="@{/exceptionHandler/test}">测试异常处理</a><br>
<br/>
<br/>

</body>
</html>